[우테코 프리코스] depth는 왜 2까지만 허용할까

이 글은 요구사항에 대해서 의문점을 가지고 질문을 던지며 의문점을 해결해나가는 글입니다.

지금은 1주 차 미션이 끝나고 2주 차 미션이 시작된 시점이지만, 그 전에 1주차에 제시되었던 요구사항중 하나의 요구사항에 대해서 탐구했던 것을 포스팅해보려 합니다.

우테코 프리코스 1주 차 미션을 처음 받았을 때 제목과 같은 요구사항을 볼 수 있었습니다. 그 아래에는 아래와 같은 문구들이 쓰여있었습니다.

  • 예를 들어 while문 안에 if문이 있으면 depth는 2이다.
  • 힌트: depth를 줄이는 좋은 방법은 함수(또는 메소드)를 분리하면 된다.

처음 들었던 생각은  ‘가독성을 위해서 depth를 2까지만 쓰라는 건가’였습니다.


아무래도 블록문(미션에서는 함수를 의미한 게 아닐까 싶다.)에서 코드의 depth가 깊다는 것은 해당 블록문(함수)에서 여러 개의 분기문을 사용을 한 다는 것이고 그렇게 된다면 하나의 블록문(함수)가 많은 역할을 담당하게 된다는 것을 의미합니다. 최종적으로, depth가 깊어지면 블록문(함수)의 역할이 정확히 무엇인지 파악하기 힘들어지게 되면서 코드의 가독성이 떨어지게 되는 것입니다.


저의 해석이 맞았는지 구글링을 해보았습니다.


아래 링크에 들어가면 저의 해석과 비슷한 이야기가 나옵니다.

JavaScript Code Styling Best Practices — Maximum Depth and Lines - nested depth는 2~3이 적절하다 왜냐하면 더 길어지게 되면 가독성이 떨어지기 때문이다.


가독성있는 코드를 짜도록 노력해라


depth는 2까지만 허용한다.라는 요구사항이 우테코 교육생들에게 전하는 말은 가독성있는 코드를 짜도록 노력해라이지 않을까 싶습니다.

해당 요구사항 덕분에 1주 차 미션에서 함수 내에서 최대한 분기를 적게 사용하면서 코드를 작성할 수 있었습니다. 앞으로는 depth를 최소로 가지고 갈 수 있도록 노력할 예정입니다.


Written by@albur
꾸준히 나아가자

GitHubLinkedIn